// 用户登录

import { LOGIN_SUCCESS, LOGOUT_SUCCESS } from "../actions/action-type"

// 初始状态值
const initialState = {
  username: '',
  avatarUrl: '',
  token: ''
}

// reducer 纯函数 
// 
const render = (state = initialState, { type, payload }) => {
  switch (type) {
  case LOGIN_SUCCESS: // 登录成功 请求成功 reducer将接收到的数据合并到state中
    // 返回成功后的结果 注意payload是一个对象 它会和 原来的 state（上面那个initialState）作比较，覆盖或者生成新的state
    return { ...state, ...payload } // 返回新的 state 对象
  case LOGOUT_SUCCESS: // 退出成功 返回的就是初始空的值
    return { 
      username: '',
      avatarUrl: '',
      token: ''
    }
  default:
    return state
  }
}
export default render